草庐IT

iOS 可重用组件

全部标签

java - 使用构建器模式时,为什么我不应该重用构建器对象来访问对象配置?

当使用BuilderPattern时为什么我不应该重用构建器对象来访问对象配置?例如:正常方式:ObjectA(ObjectBuilderb){this.a=b.getA();}publicObjectgetA(){returnthis.a;}但为什么我不能只使用它:ObjectA(ObjectBuilderb){this.builder=b;}publicObjectgetA(){returnthis.builder.getA();}谢谢:) 最佳答案 使用构建器的一个重要原因是构建一个不可变的对象:构建器是可变的,它构建的东西不

java - 在哪里放置潜在可重用的辅助函数?

这与语言无关,但我目前正在使用Java。我有一个类Odp可以做一些事情。它有两个私有(private)辅助方法,其中一个确定int[][]中的最大值,另一个返回字符串中某个字符的出现次数。这些与手头的任务没有直接关系,看起来它们可以在未来的项目中重复使用。把这段代码放在哪里最好?使其公开——不好,因为Odp的功能没有直接相关,并且这些私有(private)方法是不需要在公共(public)接口(interface)中的实现细节。将它们移到不同的类(class)——但是这个类(class)应该叫什么?MiscFunctionsWithNoOtherHome?它们没有统一的主题。将其保留为

Java Paint 组件转换成位图

我需要在位图中绘制组件及其所有子组件的内容。如果我想绘制整个组件,下面的代码可以完美地工作:publicvoidprintComponent(Componentc,Stringformat,Stringfilename)throwsIOException{//CreatearenderableimagewiththesamewidthandheightasthecomponentBufferedImageimage=newBufferedImage(c.getWidth(),c.getHeight(),BufferedImage.TYPE_INT_ARGB);//Rendertheco

java - JSF:禁用组件时,其值不会进入请求映射参数。有解决方法吗?

我有一个下拉列表p:selectonemenu和一个复选框p:selectbooleancheckbox,当我选择复选框时,我想设置selectonemenu到一个特定的值。而且我不希望用户更改它,所以我将selectonemenudisabled属性设置为true。但是,当它被禁用时,它的值不会出现在请求参数映射中,当我执行facescontext.getcurrentinstance().getexternalcontext().getrequestparametermap()时,我需要它的值到这个映射.有办法解决这个问题吗?我为遗留Servlet系统编写了一个字体端,他们在其中使

java - 是否有能够重用 Given, Then 的 BDD java 框架? (具有不同的 When 步骤)

我正在寻找可以重用Given&Then进行单元和集成测试的BDDjava框架。换句话说1.给定一些先决条件。2.何时-取决于环境3.Then验证When的结果我希望能够通过更改When并保持Given和Then完整,更改测试类型,例如在简单的REST服务中:单元测试给予生成一些POJO对象何时从Given接收POJO使用此POJO调用内部服务从服务接收POJO形式的结果将收到的POJO转发给Then然后从When验证POJO整合测试给予生成一些POJO对象何时从Given接收POJO以外部服务格式加密POJO调用外部服务从暴露的服务接收外部服务格式的结果在POJO中转换接收到的结果将收

java - 使用自定义字体 [java.io.IOException : Error reading font data.]

标题不允许我说问题,所以实际的错误信息是-java.io.IOException:Problemreadingfontdata.atjava.awt.Font.createFont(UnknownSource)atAddFont.createFont(AddFont.java:11)atMainFrame$1.run(MainFrame.java:105)atjava.awt.event.InvocationEvent.dispatch(UnknownSource)atjava.awt.EventQueue.dispatchEventImpl(UnknownSource)atjava.

java - 获取 Java Swing 中组件的布局约束

下面是我一直在处理的代码模型。publicclassPane{privatefinalJPanelpane;privateJPanelnamePanel;privatefinalJTextFieldpanIdField;publicPane(){pane=newJPanel();pane.setLayout(newMigLayout("","[][grow]","[][][][][]"));namePanel=newJPanel();pane.add(namePanel,"cell11,growx");panIdField=newJTextField();pane.add(panIdF

java - 检索组件类型数组时发生类型未加载错误

我有以下代码。Complex[]time1Dummy=newComplex[time1.size()];Complex[]freq1=newComplex[time1.size()];System.out.println("Sizeoftime1:"+time1.size());for(inti=0;i在此,Complex是包含的类privatestaticDoublere;//therealpartprivatestaticDoubleim;//theimaginarypart`在这里,我试图将数组列表time1中的值分配给复杂的值函数。我在eclipse4.3.2中运行这段代码。有

java - 磁盘空间不足会导致 java.lang. io。 EOF异常

今天在java序列化和反序列化中遇到了奇怪的行为(“奇怪”是因为我不明白)我正在对linux共享目录中的对象进行序列化和反序列化。虽然序列化一切都没有任何问题,但是当我试图反序列化同一个文件时它抛出java。io。EOFException。此外,反序列化仅对这个新创建的文件失败,并且对该目录中的所有其他旧文件有效。所以我在互联网上进行了搜索,发现一个帖子说磁盘空间不足也可能是导致此错误的原因。所以我清理了一些临时文件,瞧,它起作用了。我不明白低磁盘空间如何只影响反序列化而不影响序列化?我正在使用apachecommonsSerializationUtils类。下面是序列化和反序列化的代

java - 监听组件层次结构的关键事件

我有一个Swing应用程序,它需要根据按下的是control键还是alt键来显示不同的控件集。我在主组件中添加了一个KeyListener,但只有在选择了该组件时才会通知它,如果选择了子组件则不会。有没有办法监听组件和所有后代的事件?编辑:我尝试使用主组件的InputMap,但在按下修改键时没有触发任何事件。具体来说,我有以下代码:InputMapinputMap=panel.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);inputMap.put(KeyStroke.getKeyStroke("pressedCON